<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title></title>
</head>
<body>
<!-- 这里是样式/ -->
</body>
</html>
<script>
// javascript里面所有的数字都是64位浮点数组成
// 整数和浮点数 
// 1=1.0 的
//  这样不是准确 所以javascript 调整转换为32 位数 整数
// 1=1
//   NaN 经常会出现的位置是 将字符串解析为数字的时候出错
//   比如 

   console.log(5-'x');
   console.log(5-'66');
//    上面代码运行时，会自动将字符串x转为数值，但是由于x不是数值，所以最后得到结果为NaN，表示它是“非数字”（NaN）
//   数值的操作方法
//  parseInt 将字符串的数值转换为整数
parseInt('81') 
parseInt('abc') // NaN
parseInt('.3') // NaN
parseInt('') // NaN
parseInt('+') // NaN
parseInt('+1') // 1
// 所以 字符串不可以转换之后那么 就会是NaN  所以
// 使用这个之后返回的值只有两种NaN 要不是就是整数。
parseFloat(true)  // NaN
Number(true) // 1

parseFloat(null) // NaN
Number(null) // 0

parseFloat('') // NaN
Number('') // 0

parseFloat('123.45#') // 123.45
Number('123.45#') // NaN  转换为浮点数 不是在整数 需要转换为浮点的数字
// isNaN  可以判断一个是不是NaN
// 但是，isNaN只对数值有效，如果传入其他值，会被先转成数值。比如，传入字符串的时候，字符串会被先转成NaN，所以最后返回true，这一点要特别引起注意。也就是说，isNaN为true的值，有可能不是NaN，而是一个字符串。

isNaN('Hello') // true
// 相当于
isNaN(Number('Hello')) // true

//  所以建议 就是 预判之前 可以判断一下他的类型 然后在判断他的isNaN

</script>